加密方法 3Des python实现

您所在的位置:网站首页 python RSA解密 加密方法 3Des python实现

加密方法 3Des python实现

2023-04-05 02:09| 来源: 网络整理| 查看: 265

from pyDes import triple_des, PAD_PKCS5 import binascii def des3_encrypt(s, key): k = triple_des(key=key, padmode=PAD_PKCS5) en = k.encrypt(s) endata = binascii.hexlify(en).decode() return endata # 有时会对 endata 进行再编码或者加密 def des3_decrypt(s, key): # 在此对上面的再编码或者加密进行反向还原,然后再进行3Des解密 s = binascii.unhexlify(s) k = triple_des(key=key, padmode=PAD_PKCS5) en = k.decrypt(s) return en.decode() if __name__ == '__main__': key = 'gwMTY4MDE1NzI2ODg04NDAxN' text = '0dc9b6b0b6504606acf22d8a61f8df4d' data = '5399aff647c976dd0253c3f79aa251fabb675fce92bdcbb6bad6ef517a8369af70c32d3fdd524a22' print(des3_encrypt(text, key)) print(des3_decrypt(data, key))

记录一个网站的3Des加密

from pyDes import triple_des, PAD_PKCS5 import binascii import base64 def des3_encrypt(s, key): k = triple_des(key=key, padmode=PAD_PKCS5) en = k.encrypt(s) print(en) endata = binascii.hexlify(en).decode() print(endata) return base64.b64encode(binascii.unhexlify(endata)).decode() def des3_decrypt(s, key): s = binascii.hexlify(base64.b64decode(s.encode())) print(s) s = binascii.unhexlify(s) print(s) k = triple_des(key=key, padmode=PAD_PKCS5) en = k.decrypt(s) print(en) print(en.decode()) # 注意该处会少8位 有哪位大佬可以在评论区解答一下 谢谢 return ''.join([chr(i) for i in list(en) if i!= 8]) if __name__ == '__main__': key = 'gwMTY4MDE1NzI2ODg04NDAxN' # Invalid triple DES key size. Key must be either 16 or 24 bytes long text = '123456789abcdefghijklmnopqestuvw' data = 'd60LEn5i3kuxQUQGQDf6fJrQdKxZvhKQxeOVncDbFLhwwy0/3VJKIg==' print(des3_encrypt(text, key)) print(des3_decrypt(data, key))



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3